# coding=utf-8
from django.conf import settings
from django.conf.urls import patterns, url

from admin.views.channel import get_channeL_type
from admin.views.withdraw import channel_test
from api.channel import view as channel
from api.charge import view as charge
from api.notify import view as notify
from api.notify import view_second as notify_second
from api.trans import view as trans
from api.order_inquiry import view as order_inquiry
from api.notify import agentpayview

urlpatterns = patterns(
    '',
    # 支付相关
    url(r'charge/create/?$', charge.create),
    url(r'charge/query/?$', charge.query),
    url(r'cache/(?P<cache_id>[^/]+)/?$', charge.get_cache_page),
    url(r'channel/get_vaild_pay_type/?$', channel.get_vaild_chns_type_by_mch),
    # 二维码支付
    url(r'charge/get_qrcode_url/?$', charge.get_charge_qrcode_url),
    url(r'charge/qrcode_pay_notify/?$', charge.qrcode_pay_notify),

    # 扫码支付
    url(r'charge/agent_scan_pay/?$', charge.agent_scan_pay),
    url(r'charge/agent_scanpay_notify/?$', charge.agent_scanpay_notify),

    # 主动通知商户指定订单状态 假成功
    url(r'^charge/notify_order_status/?$', charge.notify_order_status),

    url(r'^withdraw_channel_test/?$', channel_test),

    url(r'^get_channel_type/?$', get_channeL_type),

    url(r'^copy_channel/?$', channel.copy_channel),

    # 通道诊断 获取通道支付链接
    url(r'^get_channel_pay_url/?$', charge.get_channel_pay_url),

    # 提现相关
    url(r'trans/create/?$', trans.create),
    url(r'trans/query/?$', trans.query),
    url(r'trans/query_channels/?$', trans.query_channels),
    
    # order inquiry
    url(r'inquiry/create/?$', order_inquiry.create),
    url(r'inquiry/query/?$', order_inquiry.query),

    # 第三方代付回调
    url(r'{}/settlement/boshipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.boshipay_notify),
    # 第三方服务
    # url(r'{}/swiftpass/?$'.format(settings.NOTIFY_PATH), notify.swiftpass_notify),
    url(r'{}/mingtianyun/?$'.format(settings.NOTIFY_PATH), notify.mingtianyun_notify),
    # url(r'{}/paytech/?$'.format(settings.NOTIFY_PATH), notify.paytech_notify),
    # url(r'{}/paytech/?$'.format(settings.RETURN_PATH), notify.paytech_return),
    # url(r'{}/paytechnew/?$'.format(settings.NOTIFY_PATH), notify.paytechnew_notify),
    # url(r'{}/paytechnew/?$'.format(settings.RETURN_PATH), notify.paytechnew_return),
    # url(r'{}/openepay/?$'.format(settings.NOTIFY_PATH), notify.openepay_notify),
    url(r'{}/youpay/?$'.format(settings.NOTIFY_PATH), notify.youpay_notify),
    url(r'{}/youpay/(?P<pay_id>[^/]+)/?$'.format(settings.RETURN_PATH), notify.youpay_return),
    # url(r'{}/trpay/?$'.format(settings.NOTIFY_PATH), notify.trpay_notify),
    # url(r'{}/iapppay/?$'.format(settings.NOTIFY_PATH), notify.iapppay_notify),
    # url(r'{}/iapppay/?$'.format(settings.RETURN_PATH), notify.iapppay_return),
    # url(r'{}/threepay/?$'.format(settings.NOTIFY_PATH), notify.threepay_notify),
    # url(r'{}/threepay/?$'.format(settings.RETURN_PATH), notify.threepay_return),
    # url(r'{}/changfu/?$'.format(settings.NOTIFY_PATH), notify.changfu_notify),
    # url(r'{}/changfu/?$'.format(settings.RETURN_PATH), notify.changfu_return),
    # url(r'{}/xipay/?$'.format(settings.NOTIFY_PATH), notify.xipay_notify),
    # url(r'{}/xipay/?$'.format(settings.RETURN_PATH), notify.xipay_return),
    # url(r'{}/ruyipay/?$'.format(settings.NOTIFY_PATH), notify.ruyipay_notify),
    # url(r'{}/ruyipay/?$'.format(settings.RETURN_PATH), notify.ruyipay_return),
    # url(r'{}/zfpay/?$'.format(settings.NOTIFY_PATH), notify.zfpay_notify),
    # url(r'{}/zfpay/(?P<pay_id>[^/]+)/?$'.format(settings.RETURN_PATH), notify.zfpay_return),
    # url(r'{}/kspay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.kspay_notify),
    # url(r'{}/thpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.thpay_notify),
    # url(r'{}/thpay/(?P<pay_id>[^/]+)/?$'.format(settings.RETURN_PATH), notify.thpay_return),
    # url(r'{}/mdpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.mdpay_notify),
    # url(r'{}/mdpay/(?P<pay_id>[^/]+)/?$'.format(settings.RETURN_PATH), notify.mdpay_return),
    # url(r'{}/payfubao/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.payfubao_notify),
    # url(r'{}/payfubao/(?P<pay_id>[^/]+)/?$'.format(settings.RETURN_PATH), notify.payfubao_return),
    # url(r'{}/dirpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dirpay_notify),
    # url(r'{}/skillfully/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.skillfully_notify),
    # url(r'{}/yiaipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yiaipay_notify),
    # url(r'{}/dirpay/(?P<pay_id>[^/]+)/?$'.format(settings.RETURN_PATH), notify.common_return),
    # url(r'{}/kailianpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.kailianpay_notify),
    # url(r'{}/duotpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.duotpay_notify),
    # url(r'third/notify/yiaipay/(?P<app_id>[^/]+)/?$', notify.yiaipay_notify),
    # url(r'third/notify/duotpay/(?P<app_id>[^/]+)/?$', notify.duotpay_notify),
    # url(r'third/notify/kdpay/(?P<app_id>[^/]+)/?$', notify.kdpay_notify),
    url(r'{}/xftpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xftpay_notify),
    # url(r'third/notify/jcpay/(?P<app_id>[^/]+)/?$', notify.jcpay_notify),
    # url(r'{}/bopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.bopay_notify),
    url(r'{}/kvpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.kvpay_notify),
    url(r'{}/yhxpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yhxpay_notify),
    # url(r'{}/yishangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yishangpay_notify),
    # url(r'{}/boeingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.boeingpay_notify),
    url(r'{}/fuyingbao/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.fuyingbao_notify),
    # url(r'{}/okpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.okpay_notify),
    # url(r'{}/aishangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.aishangpay_notify),
    url(r'{}/zbtpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zbtpay_notify),
    url(r'{}/yjhpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yjhpay_notify),
    # url(r'{}/e_times/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.e_times_notify),
    url(r'{}/quick_money/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.quick_money_notify),
    url(r'{}/jiuyingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jiuyingpay_notify),
    url(r'{}/huihepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huihepay_notify),
    url(r'{}/zeshengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zeshengpay_notify),
    url(r'{}/cywpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.cywpay_notify),
    url(r'{}/guofupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.guofupay_notify),
    url(r'{}/tonglepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.tonglepay_notify),
    url(r'{}/easypay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.easypay_notify),
    url(r'{}/doudoupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.doudoupay_notify),
    url(r'{}/zeropay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zeropay_notify),
    url(r'{}/e520pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.e520pay_notify),
    url(r'{}/zfbpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zfbpay_notify),
    url(r'{}/xlbpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xlbpay_notify),
    url(r'{}/huichaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huichaopay_notify),
    url(r'{}/weipaipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.weipaipay_notify),
    url(r'{}/mobaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.mobaopay_notify),
    url(r'{}/yftpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yftpay_notify),
    url(r'{}/bftpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.bftpay_notify),
    url(r'{}/yifubao/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yifubaopay_notify),
    url(r'{}/juchengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.juchengpay_notify),
    url(r'{}/huitianpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huitianpay_notify),
    # url(r'{}/group_recharge_card_pay_create/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH),
    #     notify.group_recharge_card_pay_create),
    # url(r'{}/group_recharge_card_pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH),
    #     notify.group_recharge_card_pay_notify),
    url(r'{}/unpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.unpay_notify),
    url(r'{}/weibaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.weibaopay_notify),
    url(r'{}/hbtpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hbtpay_notify),
    url(r'{}/jinyangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jinyangpay_notify),
    url(r'{}/lianyingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lianyingpay_notify),
    url(r'{}/dirpay_new/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dirpay_new_notify),
    url(r'{}/tianjipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.tianjipay_notify),
    url(r'{}/qiaoshoupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.qiaoshoupay_notify),
    url(r'{}/pinduobaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.pinduobaopay_notify),
    url(r'{}/yiantongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yiantongpay_notify),
    url(r'{}/ruiyunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ruiyunpay_notify),
    url(r'{}/baishengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.baishengpay_notify),
    url(r'{}/dirpay_union/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dirpay_union_notify),
    url(r'{}/huanxunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huanxunpay_notify),
    url(r'{}/hongchuangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hongchuangpay_notify),
    url(r'{}/haifupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.haifupay_notify),
    # url(r'{}/huiyinpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huiyinpay_notify),
    url(r'{}/ks2pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ks2pay_notify),
    url(r'{}/qcmypay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.qcmypay_notify),
    url(r'{}/huiyintongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huiyintongpay_notify),
    url(r'{}/xinjiepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xinjiepay_notify),
    url(r'{}/ruibaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ruibaopay_notify),
    url(r'{}/yutoupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yutoupay_notify),
    url(r'{}/xunshoupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xunshoupay_notify),
    # url(r'{}/suiszfpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.suiszfpay_notify),
    url(r'{}/v3pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.v3pay_notify),
    # url(r'{}/beifupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.beifupay_notify),
    url(r'{}/xunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xunpay_notify),
    # url(r'{}/lipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lipay_notify),
    url(r'{}/zhangxunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhangxunpay_notify),
    url(r'{}/xun1pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xun1pay_notify),
    # url(r'{}/shanyipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shanyipay_notify),
    url(r'{}/anfupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.anfupay_notify),
    # url(r'{}/e_times_v2/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.e_times_v2_notify),
    # url(r'{}/dandanpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dandanpay_notify),
    url(r'{}/tongdapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.tongdapay_notify),
    url(r'{}/sufupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.sufupay_notify),
    url(r'{}/litaobopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.litaobopay_notify),
    # url(r'{}/newks2pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.newks2pay_notify),
    url(r'{}/weihubaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.weihubaopay_notify),
    url(r'{}/kairuipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.kairuipay_notify),
    # url(r'{}/xinpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xinpay_notify),
    url(r'{}/ks3pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ks3pay_notify),
    url(r'{}/xinkeyunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xinkeyunpay_notify),
    url(r'{}/wanlihuipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.wanlihuipay_notify),
    url(r'{}/duoduopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.duoduopay_notify),
    url(r'{}/zhifutongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhifutongpay_notify),
    # url(r'{}/lezhifupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lezhifupay_notify),
    url(r'{}/gopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.gopay_notify),
    url(r'{}/yihuipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yihuipay_notify),
    url(r'{}/guangtongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.guangtongpay_notify),
    url(r'{}/yizhipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yizhipay_notify),
    url(r'{}/sc365pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.sc365pay_notify),
    url(r'{}/hanpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hanpay_notify),
    url(r'{}/xindanpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xindanpay_notify),
    url(r'{}/mishangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.mishangpay_notify),
    url(r'{}/xunlianpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xunlianpay_notify),
    url(r'{}/boshipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.boshipay_notify),
    url(r'{}/zfpfpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zfpfpay_notify),
    # url(r'{}/zhipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhipay_notify),
    url(r'{}/tengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.tengpay_notify),
    url(r'{}/xin1pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xin1pay_notify),
    # url(r'{}/jinruipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jinruipay_notify),
    url(r'{}/ks6pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ks6pay_notify),
    url(r'{}/mishang_nativepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.mishang_nativepay_notify),
    # url(r'{}/zhinengyunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhinengyunpay_notify),
    # url(r'{}/dopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dopay_notify),
    url(r'{}/jiufutongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jiufutongpay_notify),
    url(r'{}/moshangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.moshangpay_notify),
    url(r'{}/yingtongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yingtongpay_notify),
    # url(r'{}/wufupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.wufupay_notify),
    url(r'{}/dongfangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dongfangpay_notify),
    url(r'{}/qlshpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.qlshpay_notify),
    # url(r'{}/zhinengyunpay_v5/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhinengyunpay_v5_notify),
    # url(r'{}/dopay_v1/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dopay_v1_notify),
    url(r'{}/renrenpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.renrenpay_notify),
    # url(r'{}/xinshunchangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xinshunchangpay_notify),
    url(r'{}/shuntongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shuntongpay_notify),
    # url(r'{}/hub365pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hub365pay_notify),
    # url(r'{}/mishangpay_v3/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.mishangpay_v3_notify),
    # url(r'{}/wopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.wopay_notify),
    url(r'{}/spay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.spay_notify),
    url(r'{}/kpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.kpay_notify),
    url(r'{}/xinfutongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xinfutongpay_notify),
    url(r'{}/shenglipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shenglipay_notify),
    url(r'{}/mishangpay_v4/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.mishangpay_v4_notify),
    url(r'{}/lianruipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lianruipay_notify),
    url(r'{}/zhihuipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhihuipay_notify),
    url(r'{}/xindaomipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xindaomipay_notify),
    # url(r'{}/yunbeipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yunbeipay_notify),
    # url(r'{}/shuntingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shuntingpay_notify),
    # url(r'{}/hengfutongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hengfutongpay_notify),
    url(r'{}/shenglipay_v2/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shenglipay_v2_notify),
    # url(r'{}/tongyupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.tongyupay_notify),
    # url(r'{}/pay83/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.pay83_notify),
    # url(r'{}/meilianpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.meilianpay_notify),
    url(r'{}/shunfutongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shunfutongpay_notify),
    url(r'{}/chuangyingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.chuangyingpay_notify),
    # url(r'{}/zhongfutongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhongfutongpay_notify),
    url(r'{}/ks7pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ks7pay_notify),
    # url(r'{}/futurepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.futurepay_notify),
    url(r'{}/huifupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huifupay_notify),
    # url(r'{}/skypay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.skypay_notify),
    # url(r'{}/sifangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.sifangpay_notify),
    url(r'{}/suhuipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.suhuipay_notify),
    # url(r'{}/yurunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yurunpay_notify),
    # url(r'{}/zhipay_v2/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhipay_v2_notify),
    # url(r'{}/makupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.makupay_notify),
    url(r'{}/feiniubaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.feiniubaopay_notify),
    url(r'{}/huifulapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huifulapay_notify),
    url(r'{}/grouppay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.grouppay_notify),
    # url(r'{}/kaixinguopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.kaixinguopay_notify),
    # url(r'{}/xinshunfupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xinshunfupay_notify),
    url(r'{}/hkerpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hkerpay_notify),
    # url(r'{}/fuhuitongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.fuhuitongpay_notify),
    url(r'{}/xintaipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xintaipay_notify),
    url(r'{}/cpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.cpay_notify),
    # url(r'{}/yifupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yifupay_notify),
    # url(r'{}/youshengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.youshengpay_notify),
    # url(r'{}/newpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.newpay_notify),
    url(r'{}/superstarpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.superstarpay_notify),
    # url(r'{}/wohuibaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.wohuibaopay_notify),
    # url(r'{}/jufpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jufpay_notify),
    # url(r'{}/haofupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.haofupay_notify),
    url(r'{}/limafupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.limafupay_notify),
    url(r'{}/ehuipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ehuipay_notify),
    url(r'{}/lefupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lefupay_notify),
    url(r'{}/huitongbaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huitongbaopay_notify),
    url(r'{}/tongbaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.tongbaopay_notify),
    # url(r'{}/baijiepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.baijiepay_notify),
    # url(r'{}/kuailaifupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.kuailaifupay_notify),
    url(r'{}/moopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.moopay_notify),
    url(r'{}/manapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.manapay_notify),
    url(r'{}/nihoutaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.nihoutaopay_notify),
    # url(r'{}/yilianpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yilianpay_notify),
    url(r'{}/dajipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dajipay_notify),
    url(r'{}/zhiyuanpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhiyuanpay_notify),
    # url(r'{}/hengfengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hengfengpay_notify),
    url(r'{}/cpayalipay2bank/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.cpayalipay2bank_notify),
    url(r'{}/dudupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dudupay_notify),
    # url(r'{}/ffpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ffpay_notify),
    # url(r'{}/zhifubangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhifubangpay_notify),
    url(r'{}/quansupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.quansupay_notify),
    # url(r'{}/gaotongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.gaotongpay_notify),
    url(r'{}/onepayquickpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.onepayquickpay_notify),
    # url(r'{}/jintuopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jintuopay_notify),
    # url(r'{}/jintuopay/(?P<pay_id>[^/]+)/?$'.format(settings.RETURN_PATH), notify.jintuopay_return),
    url(r'{}/spayunionpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.spayunionpay_notify),
    # url(r'{}/yunrongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yunrongpay_notify),
    url(r'{}/shengfupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shengfupay_notify),
    # url(r'{}/wantongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.wantongpay_notify),
    # url(r'{}/yingxintongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yingxintongpay_notify),
    url(r'{}/ttpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ttpay_notify),
    url(r'{}/angelapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.angelapay_notify),
    # url(r'{}/wangshifupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.wangshifupay_notify),
    url(r'{}/bajiepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.bajiepay_notify),
    url(r'{}/hydra/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hydra_notify),
    url(r'{}/fengyunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.fengyunpay_notify),
    # url(r'{}/newdaomipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.newdaomipay_notify),
    url(r'{}/mepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.mepay_notify),
    url(r'{}/onepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.onepay_notify),
    url(r'{}/jubaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jubaopay_notify),
    # url(r'{}/yixinpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yixinpay_notify),
    url(r'{}/huifutongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huifutongpay_notify),
    url(r'{}/onepaycashpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.onepaycashpay_notify),
    # url(r'{}/zhifupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhifupay_notify),
    url(r'{}/lefucloudquickpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lefucloudquickpay_notify),
    url(r'{}/anbaofupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.anbaofupay_notify),
    # url(r'{}/xinfupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xinfupay_notify),
    url(r'{}/lefuv2pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lefuv2pay_notify),
    url(r'{}/jbcpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jbcpay_notify),
    # url(r'{}/gbpays/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.gbpays_notify),
    # url(r'{}/miaofupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.miaofupay_notify),
    url(r'{}/jinyupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jinyupay_notify),
    url(r'{}/chuangpupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.chuangpupay_notify),
    # url(r'{}/coolpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.coolpay_notify),
    url(r'{}/zhichengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhichengpay_notify),
    # url(r'{}/changtongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.changtongpay_notify),
    # url(r'{}/shanfupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shanfupay_notify),
    url(r'{}/lixianfupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lixianfupay_notify),
    url(r'{}/wandapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.wandapay_notify),
    url(r'{}/youlianpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.youlianpay_notify),
    url(r'{}/onegopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.onegopay_notify),
    url(r'{}/wenfupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.wenfupay_notify),
    url(r'{}/huidingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huidingpay_notify),
    url(r'{}/hpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hpay_notify),
    url(r'{}/peiqipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.peiqipay_notify),
    url(r'{}/paopaochengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.paopaochengpay_notify),
    url(r'{}/xinwirelesspay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xinwirelesspay_notify),
    url(r'{}/yifutongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yifutongpay_notify),
    url(r'{}/jubaopenpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jubaopenpay_notify),
    url(r'{}/fubaotongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.fubaotongpay_notify),
    url(r'{}/mfpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.mfpay_notify),
    url(r'{}/yfpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yfpay_notify),
    url(r'{}/baihepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.baihepay_notify),
    # url(r'{}/yifu2pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yifu2pay_notify),
    url(r'{}/lixianfu2pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lixianfu2pay_notify),
    url(r'{}/shikongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shikongpay_notify),
    url(r'{}/lekupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lekupay_notify),
    url(r'{}/epay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.epay_notify),
    url(r'{}/miaojiepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.miaojiepay_notify),
    url(r'{}/amazepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.amazepay_notify),
    url(r'{}/zhanshenpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhanshenpay_notify),
    url(r'{}/paopaoyingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.paopaoyingpay_notify),
    url(r'{}/feiyupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.feiyupay_notify),
    url(r'{}/hengjiepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.hengjiepay_notify),
    url(r'{}/yifubaopayv2/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yifubaopayv2_notify),
    url(r'{}/easypayv2/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.easypayv2_notify),
    url(r'{}/lelianmengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.lelianmengpay_notify),
    url(r'{}/kaisuobaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.kaisuobaopay_notify),
    url(r'{}/tenglongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.tenglongpay_notify),
    url(r'{}/dingshengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dingshengpay_notify),
    url(r'{}/newchuangpupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.newchuangpupay_notify),
    url(r'{}/anxinpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.anxinpay_notify),
    url(r'{}/changshengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.changshengpay_notify),
    url(r'{}/langlangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.langlangpay_notify),
    url(r'{}/yilaipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yilaipay_notify),
    url(r'{}/sdppay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.sdppay_notify),
    url(r'{}/anpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.anpay_notify),
    url(r'{}/shengdapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shengdapay_notify),
    url(r'{}/qixingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.qixingpay_notify),
    url(r'{}/linghangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.linghangpay_notify),
    url(r'{}/dafapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dafapay_notify),
    url(r'{}/ddpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ddpay_notify),
    url(r'{}/zhuoyuepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhuoyuepay_notify),
    url(r'{}/yibaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.yibaopay_notify),
    url(r'{}/suifupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.suifupay_notify),
    url(r'{}/un2pay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.un2pay_notify),
    url(r'{}/nppay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.nppay_notify),
    url(r'{}/wanhepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.wanhepay_notify),
    url(r'{}/newlandpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.newlandpay_notify),
    url(r'{}/kukapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.kukapay_notify),
    url(r'{}/huayingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huayingpay_notify),
    url(r'{}/zhixinfupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhixinfupay_notify),
    url(r'{}/huifuyazhoupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huifuyazhoupay_notify),
    url(r'{}/xiguapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xiguapay_notify),
    url(r'{}/goldengragonpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.goldengragonpay_notify),
    url(r'{}/xundingpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xundingpay_notify),
    url(r'{}/newbaihepay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.newbaihepay_notify),
    url(r'{}/dezhunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.dezhunpay_notify),
    url(r'{}/xintongpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xintongpay_notify),
    url(r'{}/majipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.majipay_notify),
    url(r'{}/miaomiaopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.miaomiaopay_notify),
    url(r'{}/qiantongyunpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.qiantongyunpay_notify),
    url(r'{}/xiyangyangpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xiyangyangpay_notify),
    url(r'{}/ccbypay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.ccbypay_notify),
    url(r'{}/zhongchengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhongchengpay_notify),
    url(r'{}/sijipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.sijipay_notify),
    url(r'{}/jiefupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.jiefupay_notify),
    url(r'{}/shanpupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shanpupay_notify),
    url(r'{}/anjipay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.anjipay_notify),
    url(r'{}/globalpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.globalpay_notify),
    url(r'{}/toppay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.toppay_notify),
    url(r'{}/flogerpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.flogerpay_notify),
    url(r'{}/xinghuopay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.xinghuopay_notify),
    url(r'{}/huishengpay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.huishengpay_notify),
    url(r'{}/shayupay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.shayupay_notify),
    url(r'{}/zhongfapay/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify.zhongfapay_notify),
    # 异步回调视图迁移到view_second中，采用统一接口的回调，用channel_name判断是哪个渠道回调的
    # 单一的回调接口改为统一的异步回调接口，注意链接地址新增了new/，以区分老板的异步回调链接
    url(r'{}/new/(?P<channel_name>[^/]+)/(?P<app_id>[^/]+)/?$'.format(settings.NOTIFY_PATH), notify_second.notify_all),

    # 代付回调
    url(r'{}/mepay/?$'.format(settings.AGENT_PAY_NOTIFY_PATH), agentpayview.mepay_callback),
    url(r'{}/kvpay/?$'.format(settings.AGENT_PAY_NOTIFY_PATH), agentpayview.kvpay_callback),
    url(r'{}/xlbpay/?$'.format(settings.AGENT_PAY_NOTIFY_PATH), agentpayview.xlbpay_callback),
)
